package org.jeecg.modules.wms.vo;

import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.util.Date;

/**
 * 成品库存查询参数
 */
@Data
@ApiModel(value = "InventoryQueryParam", description = "成品库存查询参数")
public class InventoryQueryParam {

    @ApiModelProperty(value = "销售订单号")
    private String orderNo;

    @ApiModelProperty(value = "门窗系列")
    private String windowSeries;

    @ApiModelProperty(value = "门窗窗号")
    private String windowNo;

    @ApiModelProperty(value = "门窗颜色")
    private String windowColor;

    @ApiModelProperty(value = "仓库ID")
    private String warehouseId;

    @ApiModelProperty(value = "库位ID")
    private String locationId;

    @ApiModelProperty(value = "批次号")
    private String batchNo;

    @ApiModelProperty(value = "库存状态：1-正常，2-预留，3-冻结")
    private Integer stockStatus;

    @ApiModelProperty(value = "入库开始日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date inboundStartDate;

    @ApiModelProperty(value = "入库结束日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date inboundEndDate;

    @ApiModelProperty(value = "客户名称")
    private String customerName;

    @ApiModelProperty(value = "项目名称")
    private String projectName;

    @ApiModelProperty(value = "是否只显示有库存的记录")
    private Boolean onlyAvailable;

    @ApiModelProperty(value = "仓库名称")
    private String warehouseName;

    @ApiModelProperty(value = "库位名称")
    private String locationName;

    @ApiModelProperty(value = "库存状态数组")
    private String[] stockStatuses;
}
